<?php
/**
 * LICENSE
 *
 * This source file is subject to the new BSD license that is bundled with this
 * package in the file LICENSE.txt. It is also available through the
 * world-wide-web at this URL: http://dragonjsonserver.de/license. If you did
 * not receive a copy of the license and are unable to obtain it through the
 * world-wide-web, please send an email to license@dragonjsonserver.de. So we
 * can send you a copy immediately.
 *
 * @copyright Copyright (c) 2012 DragonProjects (http://dragonprojects.de)
 * @license http://framework.zend.com/license/new-bsd New BSD License
 * @author Christoph Herrmann <developer@dragonjsonserver.de>
 */
?>
<h3>Version 1.3.1</h3>
<h4>Releasedatum: 04.09.2012</h4>
<h4>Homepage</h4>
<ul>
    <li>Fehler bei der automatischen Weiterleitung behoben wenn man ohne eingeloggten Account auf die Startseite des Administrationsbereiches zugreifen wollte</li>
</ul>
<h3>Version 1.3.0</h3>
<h4>Releasedatum: 03.09.2012</h4>
<h4>Neue Pakete</h4>
<ul>
    <li>
        DragonX
        <ul>
            <li>Acl, siehe: <a href="<?php echo $this->url(array('controller' => 'documentation', 'action' => 'dragonx_acl'), null, true); ?>">Dokumentation/Paket Acl</a></li>
            <li>Nested Set, siehe: <a href="<?php echo $this->url(array('controller' => 'documentation', 'action' => 'dragonx_nestedset'), null, true); ?>">Dokumentation/Paket Nested Set</a></li>
        </ul>
    </li>
</ul>
<h4>Geänderte Pakete</h4>
<ul>
    <li>
        Dragon
        <ul>
            <li>
                Application
                <ul>
                    <li>Der Autoloader nutzt 'isAvailable()' der Paket Registry zur Abfrage ob aus dem Paket geladen werden darf</li>
                </ul>
            </li>
            <li>
                Json
                <ul>
                    <li>Die Requestklasse bietet nun die Methode 'parseMethod()' an die den Klassennamen und den Methodennamen der aktuellen Serviceanfrage zurück gibt</li>
                </ul>
            </li>
            <li>
                Package
                <ul>
                    <li>'isAvailable()' der Paket Registry erlaubt nun die Abfrage, ob ein Paket vorhanden ist oder nicht</li>
                </ul>
            </li>
        </ul>
    </li>
    <li>
        DragonX
        <ul>
            <li>
                Account
                <ul>
                    <li>Accounts die neu registriert werden können nun auch validiert werden durch die E-Mail bzw. dem Hash der Validierungsabfrage</li>
                    <li>Bietet nun die Möglichkeit seine E-Mail Adresse und sein Passwort zu ändern. Bei der Änderung der E-Mail Adresse wird eine neue Validierungsabfrage eingetragen</li>
                    <li>Bietet nun die Möglichkeit sein Account als zu löschen zu markieren und diese Löschung wieder zurückzusetzen</li>
                    <li>Implementierung eines Cronjobs der Accounts die als gelöscht markiert sind nach einer einstellbaren Zeit löscht</li>
                    <li>Für die Registrierung, Validierung, Änderung der E-Mail Adresse eines Accounts und Löschung der Accounts gibt es Pluginschnittstellen um währenddessen Aktionen durchführen zu können</li>
                </ul>
            </li>
            <li>
                Storage
                <ul>
                    <li>Die Schnittstelle 'ICondition' wurde erweitert sodass nun auch Datensätze durch Bedingungen aktualisiert/entfernt werden können</li>
                    <li>Die 'RecordList' besitzt nun weitere Filtermethoden zum Entfernen von neuen oder geladenen Records</li>
                    <li>'beginTransaction()' liefert nun ein Boolean zurück mit dem verschachtelte Transaktionen abgefragt werden können</li>
                    <li>'getTablename()' des ZendDbAdapters ist nun öffentlich verfügbar um dynamische SQL Statements zu unterstützen</li>
                    <li>'load()' gibt bei erfolgreichem Laden nun den Record zurück und wenn nicht false</li>
                    <li>Die verschiedenen Schnittstellen wurden umbenannt nach dem Zend Standard für Schnittstellen</li>
                    <li>Die 'RecordList' besitzt nun 'toArray()' um alle Records zu Arrays zu konvertieren und als Array zurück zu geben</li>
                </ul>
            </li>
            <li>
                Homepage
                <ul>
                    <li>Wenn ein Account für die Homepage eingeloggt ist wird nun die Navigation für den Administrationbereich geladen</li>
                    <li>Der Modulname wird dem Layout mit übergeben sodass das Layout zu den Controllern des jeweiligen Moduls verlinken kann</li>
                    <li>Der abstrakte Controller prüft nun auf einen gültigen Account wenn auf den Administrationsbereich zugegriffen wird und leitet entsprechend auf den Login um wenn kein gültiger Account vorliegt</li>
                </ul>
            </li>
        </ul>
    </li>
</ul>
<h4>Homepage</h4>
<ul>
    <li>
        Trennung der Homepage vom Administrationsbereich
        <ul>
            <li>Eigene Navigation mit der Startseite und dem DragonJsonClient</li>
            <li>Eigene Startseite für spätere Informationen</li>
		    <li>DragonJsonClient bei dem die Identity der Eingabefelder mit der Identity des eingeloggten Profils vorbelegt ist</li>
        </ul>
    </li>
    <li>Das Changelog ist nun unterteilt in Branches und nicht mehr in die einzelnen Versionen</li>
    <li>Der Login nimmt eine Weiterleitung durch den abstrakten Controller entgegen und leitet bei einem erfolgreichen Login auf diese Seite um</li>
    <li>Die Änderung der E-Mail Adresse und des Passworts des eigenen Accounts ist nun im Administrationsbereich der Homepage möglich</li>
    <li>Die Accountlöschung eintragen und zurücksetzen ist nun im Administrationsbereich der Homepage möglich</li>
    <li>Bei den Neuigkeiten wird nun Pagination unterstützt sodass man alle Neuigkeiten Seitenweise durchgehen kann</li>
</ul>
<h4>JsonClient</h4>
<ul>
    <li>Bietet nun die Möglichkeit Defaultparameter zu setzen die zu jedem Request mit versendet werden</li>
</ul>
<h4>DragonJsonClient</h4>
<ul>
    <li>Bietet nun die Möglichkeit Defaultparameter zu setzen mit welchen die Eingabefelder vorbefüllt werden</li>
</ul>
<h2>Migration vom Branch 1.2</h2>
<h3>Benötigt</h3>
<ul>
    <li>Da die Anwendung nun in die Bereiche Homepage und Administration getrennt wurde müssen auch alle eigenen Controller und Views darauf aufgeteilt werden</li>
    <li>Da 'load()' nun nicht mehr die Storage Engine selbst zurück gibt sondern den Record müssen Verkettungen aufgelöst werden</li>
    <li>Eigene Storage Engines müssen nun die nach dem Zend Standard umbenannten Schnittstellen implementieren</li>
    <li>In der Konfigurationsdatei für die Neuigkeiten '/config/dragonx/homepage/news.php' hat sich der Parametername 'amount' geändert in 'perpage'</li>
</ul>
